/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.upc.movilidad.web;

import edu.upc.movilidad.model.MaestroPersonalBean;
import edu.upc.movilidad.service.SeguridadService;
import edu.upc.movilidad.web.util.Bitacoras;

import java.util.Calendar;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.RequestMapping;

/**
 *
 * @author jesus.segovia
 */
@Controller
//@WebServiceClient
public class MovilidadController {

    Logger logger = Logger.getLogger(MovilidadController.class);

    String fecha = "";
    Calendar c = Calendar.getInstance();
   
    Bitacoras bitacoras=new Bitacoras();
    @Autowired
    SeguridadService seguridadService;

    public MovilidadController() {

        logger.info("Ingresando al método '" + this.getClass().getName() + ".InicioController '...");
        fecha = c.get(Calendar.DAY_OF_MONTH) + "/" + bitacoras.getCodigo("00", c.get(Calendar.MONTH) + 1) + "/" + c.get(Calendar.YEAR);

    }

    @RequestMapping(value = "/layout.htm")
    public String menubar(Model model, HttpServletRequest request) throws Exception {
        String vdniusuario = bitacoras.valCadena(request.getParameter("vdniusuario"));
        MaestroPersonalBean empleado = this.seguridadService.obtenerUsuario(bitacoras.toMayuscula(vdniusuario));
        if (empleado == null) {
            empleado = new MaestroPersonalBean();
            empleado.setvMensaje("KO");
        }else{
            empleado.setvMensaje("OK");               
        }
        model.addAttribute("vempleado", empleado);

        logger.info("Ingresando al método '" + this.getClass().getName() + ".menubar '...");

        return "layout";
    }

    @RequestMapping(value = "/index.htm")
    public void index(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".index '...");
    }

    @RequestMapping(value = "/include/introduccion.htm")
    public void introduccion(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".introduccion '...");
    }
    
    
     @RequestMapping(value = "/include/pregufrecuentes.htm")
    public void pregufrecuentes(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".pregufrecuentes '...");
    }
     
    @RequestMapping(value = "/include/terminologia.htm")
    public void terminologia(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".terminologia '...");
    }
    
    @RequestMapping(value = "/autorizarDDJJ.htm")
    public String autorizarDDJJ(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".autorizarDDJJ '...");
        return "proceso/autorizarDDJJ";
    }
    
      @RequestMapping(value = "/consultarDDJJ.htm")
    public String consultarDDJJ(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".consultarDDJJ '...");
        return "proceso/consultarDDJJ";
    }
    
      @RequestMapping(value = "/registrarDDJJ.htm")
    public String registrarDDJJ(HttpServletRequest request) throws Exception {
        logger.info("Ingresando al método '" + this.getClass().getName() + ".introduccion '...");
        
          return "proceso/registrarDDJJ";
    }    
  
//
//    @RequestMapping(value = "/consultarDDJJ.htm")
//    public String listarDDJJ(HttpServletRequest request,Model model) throws Exception {
//        logger.info("Ingresando al método '" + this.getClass().getName() + ".listarDDJJ'...");
//        
//        String codigoEmpleado=(String)request.getParameter("vcodempleado");
//        
//       // List<Movilidad> listaAll= (ArrayList) this.listarMovilidadAll();
//        List<edu.upc.movilidad.ws.DetalleDDJJ> listaAll= port.listarDetalleDDJJ(codigoEmpleado);
//        if(listaAll.isEmpty()){
//        model.addAttribute("listadoDDJJ",new ArrayList<Movilidad>());
//        }else{
//        model.addAttribute("listadoDDJJ",listaAll);
//        }
//        
//        return "proceso/consultarDDJJ";
//    }
//    
//     @RequestMapping(value = "/autorizarDDJJ.htm")
//    public String autorizarDDJJ(HttpServletRequest request,Model model) throws Exception {
//        logger.info("Ingresando al método '" + this.getClass().getName() + ".listarDDJJ'...");
//        
//        List<Movilidad> listaAll= (ArrayList) this.listarMovilidadAll();
//        if(listaAll.isEmpty()){
//        model.addAttribute("",new ArrayList<Movilidad>());
//        }else{
//        model.addAttribute("listadoMov",listaAll);
//        }
//        
//        return "proceso/autorizarDDJJ";
//    }
//    
//    @RequestMapping(value = "/registrarDDJJ.htm")
//    public String registrarDDJJ(HttpServletRequest request,Model model) throws Exception {
//        logger.info("Ingresando al método '" + this.getClass().getName() + ".registrarDDJJ'...");
//      
//         cabeceraDDJJ=new CabeceraDDJJ();
//         cabeceraDDJJ=port.obtenerDatosEmpleado((String)request.getParameter("vcodempleado"));
//         cabeceraDDJJ.setFecRegistro(fecha);
//        model.addAttribute("cabeceraDDJJ",cabeceraDDJJ);
//        
//        return "proceso/registrarDDJJ";
//         
//       
//      
//    }
//     
//    @RequestMapping(value = "/guardarDDJJ.htm")
//    public String guardarDDJJ(HttpServletRequest request,Model model) throws Exception {
//        logger.info("Ingresando al método '" + this.getClass().getName() + ".registrarDDJJ'...");
//          boolean grabo=false;
//            detalleDDJJ=new DetalleDDJJ();
//            detalleDDJJ.setCodDDJJ((String)request.getParameter("vcodDDJJ"));
//            detalleDDJJ.setFechaEntrada((String)request.getParameter("vfechasalida"));
//            detalleDDJJ.setHoraEntrada((String)request.getParameter("vhorasalida"));
//            detalleDDJJ.setFechaRetorno((String)request.getParameter("vfecharetorno"));
//            detalleDDJJ.setHoraRetorno((String)request.getParameter("vhoraretorno"));
//            detalleDDJJ.setDestino((String)request.getParameter("vdestino"));
//            detalleDDJJ.setTarifa((String)request.getParameter("vtarifa"));
//            detalleDDJJ.setCodEmpleado((String)request.getParameter("vcodempleado"));
//            detalleDDJJ.setEstado("ELABORADO");
//         try {
//              grabo=port.registrarMovilidad(detalleDDJJ);
//        if(grabo){
//            model.addAttribute("vmensaje","Se grabo correctamente");
//        }else{
//          model.addAttribute("vmensaje","Se grabo correctamente");
//        }
//         } catch (Exception e) {
//         }finally{
//           return "proceso/registrarDDJJ";
//         }
//        
//    }
//     
//     
//    //Metodos web services
//
//    private List<edu.upc.movilidad.ws.Movilidad> listarMovilidadAll() {
//
//        return port.listarMovilidadAll();
//
//    }
//
//    private boolean updMovilByNumber(java.lang.Integer codigoDDJJ) {
//        movilidadResponse = new MovilidadResponse();
//        movilidadResponse = port.updMovilByNumber(codigoDDJJ);
//
//        return movilidadResponse.isGraboAnuloEdito();
//    }
}
